草庐IT

c++ - typedef 的奇怪用法

全部标签

javascript - JavaScript "for"中的奇怪事情

我正在使用jQuery,但我有一件我不明白的奇怪事情。我有一些代码:for(i=1;i“#some_button”,顾名思义-它们是一些按钮。单击时,他们应该弹出一个带有编号的框,对吗?但他们没有。如果有4个按钮,它们总是弹出“5”(按钮数+1)。为什么会这样? 最佳答案 它与JavaScript作用域有关。您可以通过添加一个函数并让该函数调用自身并传入i来引入另一个作用域,从而轻松解决这个问题:for(vari=1;i这会创建一个闭包-当内部函数可以访问调用该函数时不再存在的范围。参见thisarticle在MDC上获取更多信息。

javascript - 模板中的奇怪 Javascript。这是一次黑客攻击吗?

上周我根据xHTMLStrict1.0/CSS2.1标准验证了我客户的网站。今天,当我重新检查时,我遇到了由一个奇怪的和以前未知的脚本引起的验证错误。我在ExpressionEngineCMS的index.php文件中找到了它。这是我怀疑的黑客攻击吗?我忍不住注意到脚本中编码的俄罗斯域...这个javascript在做什么?我需要向我的客户解释具体的危险。this.v=27047;this.v+=187;ug=["n"];OV=29534;OV--;vary;varC="C";varT={};r=function(){b=36068;b-=144;M=[];functionf(V,w,

javascript - 如何从我的 reportError 函数中获取 SpiderMonkey (JSAPI) 中的完整回溯?

我正在使用spidermonkey在我的应用程序中嵌入javascript,并且我有一个名为reportError的函数,它接收JSErrorReport.捕获错误的当前行似乎很简单,但是是否有可能让整个调用路径显示完整的回溯? 最佳答案 通过JSErrorReport是做不到的。相反,您必须查看调试器APIS。找到头文件jsdbgapi.h。它有一个钩子(Hook)函数列表,如果您在启用调试的情况下运行(JS_SetDebugMode(cx,true)),将调用这些函数。在这些钩子(Hook)函数中,您可以简单地调用js_Dump

javascript - 从数字文字访问 "getter"的属性时,IE9 中出现奇怪的 `Number.prototype` 行为

Object.defineProperty(Number.prototype,'foo',{get:function(){returnthis}})console.log(10.5.foo)console.log(10..foo)//0inIE9!console.log(10.0.foo)//0inIE9!console.log(10.01.foo)console.log((10).foo)//0inIE9!varx=10console.log(x.foo)//0inIE9!谁能解释这种行为和/或建议解决方法?jsfiddle.net/yr7hQ/ 最佳答案

Javascript 奇怪的随机行为

我正在使用JavaScript的Math.random()函数将项目分布到桶中。之后,我在Canvas中显示水桶。我希望这些项目能够均匀分布,但是(即使在多个浏览器中多次重试之后),似乎分布在左侧更细粒度(接近于零)并且向右侧变得更加均匀(接近于1).见下图.是我做错了,还是JavaScript的随机函数很糟糕?下面是用于生成此图像的代码:window.onload=function(){varcanvas=document.getElementById('canvas');varctx=canvas.getContext('2d');varwidth=canvas.width;var

javascript - onchange + validation + enter key 奇怪的行为

我有一个带有日期输入字段的表单。应验证日期:只允许从今天开始的日期+最多3年。如果日期有效,将显示一个模式,否则将出现带有错误消息的警报。假设某人将日期更改为26.10.2099:如果离开输入字段(通过用鼠标单击其他地方),一切都会按预期进行:出现错误信息日期自动改回没有模态显示但是如果按下Enter而不是离开输入框,会发生以下情况:没有错误信息显示日期自动改回模态出现我的想法是,将日期改回其初始值会导致再次触发onchange事件,然后日期有效并显示模态。但第一种情况并非如此。在第二种情况下,事件有时会触发两次,但并非总是如此。你可以在这里试一试:https://jsfiddle.n

Javascript 日期解析在 Chrome 中返回奇怪的结果

我在Chrome(版本74.0.3729.131(官方构建)(64位))中观察到一些奇怪的日期行为。在ChromeDevConsole中执行了以下javascript:newDate('1894-01-01T00:00:00+01:00')//result:MonJan01189400:00:00GMT+0100(CentralEuropeanStandardTime)newDate('1893-01-01T00:00:00+01:00')//result:SatDec31189223:53:28GMT+0053(CentralEuropeanStandardTime)尽管提供了有效的

javascript - apply() 的这种用法在 Javascript 中意味着什么

拜托,有人能告诉我this.init.apply(this,arguments)在下面的代码中做了什么吗?我理解apply()的一般作用,但在下面代码的上下文中,它在做什么?varClass=function(){varklass=function(){this.init.apply(this,arguments);//Idon'treallygetthisbit...};klass.prototype.init=function(){};returnklass;};varPerson=newClass;//Usagevarsomeone=newPerson;我看到很多人都在使用它。我

javascript - 如何使用 js-ctypes Firefox 扩展调用 native C 代码?

我正在尝试构建一个需要调用nativeC代码的Firefox扩展。我的C程序代码是:#includeintadd(inta,intb){return(a+b);}我的JavaScript代码是:var{Cu}=require('chrome');varself=require('sdk/self');Cu.import("resource://gre/modules/ctypes.jsm");varlib;varputs;lib=ctypes.open('G:\\Shankar\\Project\\Maidsafe\\Firefox\\addon-sdk-1.17\\jsctype_s

javascript - 奇怪的 Javascript 表达式

我试图理解如何Protovis有效,我偶然发现了这样的代码:force.node.add(pv.Dot).size(function(d)(d.linkDegree+4)*Math.pow(this.scale,-1.5))//noticethis.fillStyle(function(d)d.fix?"brown":colors(d.group))//andthis.strokeStyle(function()this.fillStyle().darker())//andeventhis.lineWidth(1).title(function(d)d.nodeName).event(